File migration from primary storage to relatively low cost secondary storage is common in order to achieve cost effectiveness of storage systems. The process of file migration often involves identifying files that have met criteria specified in user defined policies.
For example, some criteria of a file migration policy may indicate that if a file is not accessed within a specific time frame, then the file is moved to a secondary storage. A motivating factor for employing such an age-based migration policy may be to remove less frequently accessed data in order to free up primary storage. When implementing a migration policy, checks of file attributes must be performed to determine whether a file meets or does not meet certain criteria specified in a migration policy. Such checks of file attributes and comparisons of multiple user defined migration policies against each file can be costly. Especially as storage systems grow large, a scan of the entire primary storage to retrieve a large number of files and read the attributes may become prohibitively time consuming and resource draining.
There is a need, therefore, for an improved method or system that would permit efficient analysis of files for migration purposes, without adversely affecting storage systems performance or over taxing storage systems resources.